package com.windaka.suizhi.annotation;

import com.windaka.suizhi.aspect.NullToEmptyAspect;

import java.lang.annotation.*;


/**
 * <p><strong>将返回的 Null 转换为 Empty</strong></p>
 * <p>
 *     用在Impl实现类的方法上 <br>
 * </p>
 * <li>
 * <p>
 *     <strong>示例1: @NullToEmpty</strong> <br>
 *     结果: 会将结果中的null转换为"" <br>
 * </p>
 * </li>
 * <li>
 * <p>
 *     <strong>示例2: @NullToEmpty(result="data")</strong> <br>
 *     结果: 会将结果中叫 data 对象中的null转换为"" <br>
 * </p>
 * </li>
 * @author wzk
 * @see NullToEmptyAspect
 * @since 8:28 2021/8/11
 **/
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface NullToEmpty {
    /**
     * 返回的结果名称
     */
    String result() default "result";

    /**
     * 是否将结果对象中null转换为""
     */
    boolean autoNullToEmpty() default true;
}
